// pages/write/write.js
var app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // workimg:null,
    editor:''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad:function (options) {
    // var that = this
    // that.setData({
    //   workimg:options.workData
    // })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  editor:null,
  //初始化富文本编辑器
  initEditor(){
    let query = wx.createSelectorQuery()
    return new Promise((rv,rj)=>{
      query.select("#editor").context(res=>{
        //res.editor是富文本编辑器的上下文对象
        this.editor = res.context
        rv(this.editor)
      }).exec()
    })
  },
  onReady() {
    //清空富文本编辑器
    wx.removeStorage({
      key: 'content',
    })
    this.initEditor().then(()=>{
      let content = wx.getStorageSync('content');
      content && this.editor.setContents({
        html:content
      })
    })
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    if(!this.editor){
      this.initEditor()
    }
  },
  async insertImage(){
    try{
      let ret = await new Promise((rv,rj)=>{
        wx.chooseMedia({
          count: 1,
          meidaType:['image'],
          sourceType:['album','camera'],
          sizeType:['original','compressed'],
          success:res=>{
            rv(res)
          },
          fail:err=>{
            rj(err)
          }
        })
      })
      //上传图片
      let img_ret = await new Promise((rv,rj)=>{
        wx.uploadFile({
          filePath:ret.tempFiles[0].tempFilePath,
          name:'image',
          //一会改接口
          url:"http://localhost:2023/api/image",
          header:{
            authorization:wx.getStorageSync('token')
          },
          success:res=>{
            rv(res)
          },
          fail:err=>{
            rj(err)
          }
        })
      })
      this.editor.insertImage({
        src:`http://localhost:2023/public/image/${img_ret.data}`
      })
    }catch(err){
      console.log(err)
    }
  },
  //缓存内容
  cacheContent(){
    if(this.timer) return
    this.timer = setTimeout(()=>{
      this.editor.getContents({
        success:res=>{
          wx.setStorageSync('content',res.html)
          // console.log(res)
        }
      })
    },500)
  },
  //表单内容提交
  postData(e){
    this.editor.getContents({
      success:res=>{
        // console.log(res.html)
        // console.log(res)
        let touxiang = app.globalData.userInfo.avatarUrl;
        let nicheng = app.globalData.userInfo.nickName
        wx.request({
          //一会改接口
          url:"http://localhost:2023/api/content",
          method:"POST",
          header:{
            authorization:wx.getStorageSync('token')
          },
          data:{
            avatar:touxiang,
            nickname:nicheng,
            content:res.html
          },
          success:res=>{
            console.log(res);
            if(res.statusCode ===200){
              wx.showToast({
                title: '发布完成！',
                icon:'success',
                duration:1500,
              })
              setTimeout(function(){
                  //跳转到前一页，并更新
                  let pages = getCurrentPages();   //获取小程序页面栈
                  let beforePage = pages[pages.length -2];  //获取上个页面的实例对象
                  beforePage.onLoad();   //触发上个页面自定义的onload方法
                  wx.navigateBack({         //返回上一页  
                    delta:1
                  })
              },1500) 
            }
          }
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload:function(){

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})